home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_400 / 405_01 / flexpp / flex_pp.mak < prev    next >
Encoding:
Makefile  |  1993-05-04  |  4.1 KB  |  265 lines

  1. ORIGIN = PWB
  2. ORIGIN_VER = 2.0
  3. PROJ = FLEX_PP
  4. PROJFILE = FLEX_PP.MAK
  5. DEBUG = 1
  6.  
  7. CC  = cl
  8. CFLAGS_G  = /AL /W4 /Za /DMS_DOS /BATCH /Gt8
  9. CFLAGS_D  = /f /Od /Zi /Zr
  10. CFLAGS_R  = /f- /Ot /Ol /Og /Oe /Oi /Gs
  11. CXX  = cl
  12. CXXFLAGS_G  = /W2 /BATCH
  13. CXXFLAGS_D  = /f /Zi /Od
  14. CXXFLAGS_R  = /f- /Ot /Oi /Ol /Oe /Og /Gs
  15. MAPFILE_D  = NUL
  16. MAPFILE_R  = NUL
  17. LFLAGS_G  = /NOI /STACK:32000 /BATCH /ONERROR:NOEXE
  18. LFLAGS_D  = /CO /FAR /PACKC
  19. LFLAGS_R  = /EXE /FAR /PACKC
  20. LINKER    = link
  21. ILINK  = ilink
  22. LRF  = echo > NUL
  23. ILFLAGS  = /a /e
  24. RUNFLAGS  = -d8 -hscanner.h -oscanner.cpp scanner.l
  25.  
  26. FILES  = CCL.C DFA.C ECS.C MAIN.C MISC.C NFA.C PARSE.C SCAN.C SYM.C TBLCMP.C\
  27.     YYLEX.C GEN.C
  28. OBJS  = CCL.obj DFA.obj ECS.obj MAIN.obj MISC.obj NFA.obj PARSE.obj SCAN.obj\
  29.     SYM.obj TBLCMP.obj YYLEX.obj GEN.obj
  30.  
  31. all: $(PROJ).exe
  32.  
  33. .SUFFIXES:
  34. .SUFFIXES: .obj .c
  35. .SUFFIXES: .obj .c
  36.  
  37. CCL.obj : CCL.C flexdef.h
  38. !IF $(DEBUG)
  39.     @$(CC) @<<$(PROJ).rsp
  40. /c $(CFLAGS_G)
  41. $(CFLAGS_D) /FoCCL.obj CCL.C
  42. <<
  43. !ELSE
  44.     @$(CC) @<<$(PROJ).rsp
  45. /c $(CFLAGS_G)
  46. $(CFLAGS_R) /FoCCL.obj CCL.C
  47. <<
  48. !ENDIF
  49.  
  50. DFA.obj : DFA.C flexdef.h
  51. !IF $(DEBUG)
  52.     @$(CC) @<<$(PROJ).rsp
  53. /c $(CFLAGS_G)
  54. $(CFLAGS_D) /FoDFA.obj DFA.C
  55. <<
  56. !ELSE
  57.     @$(CC) @<<$(PROJ).rsp
  58. /c $(CFLAGS_G)
  59. $(CFLAGS_R) /FoDFA.obj DFA.C
  60. <<
  61. !ENDIF
  62.  
  63. ECS.obj : ECS.C flexdef.h
  64. !IF $(DEBUG)
  65.     @$(CC) @<<$(PROJ).rsp
  66. /c $(CFLAGS_G)
  67. $(CFLAGS_D) /FoECS.obj ECS.C
  68. <<
  69. !ELSE
  70.     @$(CC) @<<$(PROJ).rsp
  71. /c $(CFLAGS_G)
  72. $(CFLAGS_R) /FoECS.obj ECS.C
  73. <<
  74. !ENDIF
  75.  
  76. MAIN.obj : MAIN.C flexdef.h
  77. !IF $(DEBUG)
  78.     @$(CC) @<<$(PROJ).rsp
  79. /c $(CFLAGS_G)
  80. $(CFLAGS_D) /FoMAIN.obj MAIN.C
  81. <<
  82. !ELSE
  83.     @$(CC) @<<$(PROJ).rsp
  84. /c $(CFLAGS_G)
  85. $(CFLAGS_R) /FoMAIN.obj MAIN.C
  86. <<
  87. !ENDIF
  88.  
  89. MISC.obj : MISC.C flexdef.h
  90. !IF $(DEBUG)
  91.     @$(CC) @<<$(PROJ).rsp
  92. /c $(CFLAGS_G)
  93. $(CFLAGS_D) /FoMISC.obj MISC.C
  94. <<
  95. !ELSE
  96.     @$(CC) @<<$(PROJ).rsp
  97. /c $(CFLAGS_G)
  98. $(CFLAGS_R) /FoMISC.obj MISC.C
  99. <<
  100. !ENDIF
  101.  
  102. NFA.obj : NFA.C flexdef.h
  103. !IF $(DEBUG)
  104.     @$(CC) @<<$(PROJ).rsp
  105. /c $(CFLAGS_G)
  106. $(CFLAGS_D) /FoNFA.obj NFA.C
  107. <<
  108. !ELSE
  109.     @$(CC) @<<$(PROJ).rsp
  110. /c $(CFLAGS_G)
  111. $(CFLAGS_R) /FoNFA.obj NFA.C
  112. <<
  113. !ENDIF
  114.  
  115. PARSE.obj : PARSE.C flexdef.h
  116. !IF $(DEBUG)
  117.     @$(CC) @<<$(PROJ).rsp
  118. /c $(CFLAGS_G)
  119. $(CFLAGS_D) /FoPARSE.obj PARSE.C
  120. <<
  121. !ELSE
  122.     @$(CC) @<<$(PROJ).rsp
  123. /c $(CFLAGS_G)
  124. $(CFLAGS_R) /FoPARSE.obj PARSE.C
  125. <<
  126. !ENDIF
  127.  
  128. SCAN.obj : SCAN.C flexdef.h parse.h
  129. !IF $(DEBUG)
  130.     @$(CC) @<<$(PROJ).rsp
  131. /c $(CFLAGS_G)
  132. $(CFLAGS_D) /FoSCAN.obj SCAN.C
  133. <<
  134. !ELSE
  135.     @$(CC) @<<$(PROJ).rsp
  136. /c $(CFLAGS_G)
  137. $(CFLAGS_R) /FoSCAN.obj SCAN.C
  138. <<
  139. !ENDIF
  140.  
  141. SYM.obj : SYM.C flexdef.h
  142. !IF $(DEBUG)
  143.     @$(CC) @<<$(PROJ).rsp
  144. /c $(CFLAGS_G)
  145. $(CFLAGS_D) /FoSYM.obj SYM.C
  146. <<
  147. !ELSE
  148.     @$(CC) @<<$(PROJ).rsp
  149. /c $(CFLAGS_G)
  150. $(CFLAGS_R) /FoSYM.obj SYM.C
  151. <<
  152. !ENDIF
  153.  
  154. TBLCMP.obj : TBLCMP.C flexdef.h
  155. !IF $(DEBUG)
  156.     @$(CC) @<<$(PROJ).rsp
  157. /c $(CFLAGS_G)
  158. $(CFLAGS_D) /FoTBLCMP.obj TBLCMP.C
  159. <<
  160. !ELSE
  161.     @$(CC) @<<$(PROJ).rsp
  162. /c $(CFLAGS_G)
  163. $(CFLAGS_R) /FoTBLCMP.obj TBLCMP.C
  164. <<
  165. !ENDIF
  166.  
  167. YYLEX.obj : YYLEX.C flexdef.h parse.h
  168. !IF $(DEBUG)
  169.     @$(CC) @<<$(PROJ).rsp
  170. /c $(CFLAGS_G)
  171. $(CFLAGS_D) /FoYYLEX.obj YYLEX.C
  172. <<
  173. !ELSE
  174.     @$(CC) @<<$(PROJ).rsp
  175. /c $(CFLAGS_G)
  176. $(CFLAGS_R) /FoYYLEX.obj YYLEX.C
  177. <<
  178. !ENDIF
  179.  
  180. GEN.obj : GEN.C flexdef.h
  181. !IF $(DEBUG)
  182.     @$(CC) @<<$(PROJ).rsp
  183. /c $(CFLAGS_G)
  184. $(CFLAGS_D) /FoGEN.obj GEN.C
  185. <<
  186. !ELSE
  187.     @$(CC) @<<$(PROJ).rsp
  188. /c $(CFLAGS_G)
  189. $(CFLAGS_R) /FoGEN.obj GEN.C
  190. <<
  191. !ENDIF
  192.  
  193.  
  194. $(PROJ).exe : $(OBJS)
  195. !IF $(DEBUG)
  196.     $(LRF) @<<$(PROJ).lrf
  197. $(RT_OBJS: = +^
  198. ) $(OBJS: = +^
  199. )
  200. $@
  201. $(MAPFILE_D)
  202. $(LIBS: = +^
  203. ) +
  204. $(LLIBS_G: = +^
  205. ) +
  206. $(LLIBS_D: = +^
  207. )
  208. $(DEF_FILE) $(LFLAGS_G) $(LFLAGS_D);
  209. <<
  210. !ELSE
  211.     $(LRF) @<<$(PROJ).lrf
  212. $(RT_OBJS: = +^
  213. ) $(OBJS: = +^
  214. )
  215. $@
  216. $(MAPFILE_R)
  217. $(LIBS: = +^
  218. ) +
  219. $(LLIBS_G: = +^
  220. ) +
  221. $(LLIBS_R: = +^
  222. )
  223. $(DEF_FILE) $(LFLAGS_G) $(LFLAGS_R);
  224. <<
  225. !ENDIF
  226.     $(LINKER) @$(PROJ).lrf
  227.  
  228.  
  229. .c.obj :
  230. !IF $(DEBUG)
  231.     @$(CC) @<<$(PROJ).rsp
  232. /c $(CFLAGS_G)
  233. $(CFLAGS_D) /Fo$@ $<
  234. <<
  235. !ELSE
  236.     @$(CC) @<<$(PROJ).rsp
  237. /c $(CFLAGS_G)
  238. $(CFLAGS_R) /Fo$@ $<
  239. <<
  240. !ENDIF
  241.  
  242.  
  243. run: $(PROJ).exe
  244.     $(PROJ).exe $(RUNFLAGS)
  245.  
  246. debug: $(PROJ).exe
  247.     CV $(CVFLAGS) $(PROJ).exe $(RUNFLAGS)
  248.  
  249. # << User_supplied_information >>
  250. YACC=bison_pp -y
  251. YACC_FLAGS=
  252. LEX=flex_pp
  253. LEX_FLAGS= -ist8
  254. .y.c    :
  255.     $(YACC) $(YACC_FLAGS)  -d $*.y
  256.     rename y_tab.c $*.c
  257.     rename y_tab.h $*.h
  258. .y.h    :
  259.     $(YACC) $(YACC_FLAGS) -d    $*.y
  260.     rename y_tab.c $*.c
  261.     rename y_tab.h $*.h
  262.  
  263. .l.c    :
  264.     $(LEX) $(LEX_FLAGS) $*.l   >$*.c
  265.